using System;
using System.Collections.Generic;
using System.Linq;
using System.Threading.Tasks;

namespace DataStructure
{
    public class BST1Set<T> : ISet<T> where T : IComparable<T>
    {
        private BST1<T> bst;
        
        public BST1Set()
        {
            bst = new BST1<T>();
        }
        public int Count => bst.Count;

        public bool IsEmpty => bst.IsEmpty;

        public void Add(T t)
        {
            bst.Add(t);
        }

        public bool Contains(T t)
        {
            return bst.Contains(t);
        }

        public void Remove(T t)
        {
            bst.Remove(t);
        }
        
        public int MaxHeight()
        {
            return bst.MaxHeight();
        }
    }
}